﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using RRTWSEntityDSD.Dominio;
using RRTWSEntityDSD.Dao;

namespace RRTWSDSD.ServiceEntidad
{
    /// <summary>
    /// Summary description for EstadosService
    /// </summary>
    [WebService(Namespace = "http://rtt.edu.upc.com.pe/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class EstadosService : System.Web.Services.WebService
    {
        private EstadoDAO estadoDAO = new EstadoDAO();
        /// <summary>
        /// Metodo Danielle
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        [WebMethod]
        public EstadoEntrada getEstado(int id)
        {
            return estadoDAO.getEstado(id);
        }

        [WebMethod]
        public EstadoEntrada CrearEstadoEntrada(string nombres)
        {
            EstadoEntrada estadoEntradaACrear = new EstadoEntrada()
            {
                descripcion = nombres,

            };

            return estadoDAO.Crear(estadoEntradaACrear);
        }


        [WebMethod]
        public EstadoEntrada ObtenerEstadoEntrada(int codigo)
        {
            return estadoDAO.Obtener(codigo);
        }
        [WebMethod]
        public EstadoEntrada ModificarEstadoEntrada(int codigo, string nombres)
        {
            EstadoEntrada estadoEntradaAModificar = new EstadoEntrada()
            {
                idEstado = codigo,
                descripcion = nombres

            };
            return estadoDAO.Modificar(estadoEntradaAModificar);
        }
        [WebMethod]
        public void EliminarEstadoEntrada(int codigo)
        {
            EstadoEntrada estadoEntradaExistente = estadoDAO.Obtener(codigo);
            estadoDAO.Eliminar(estadoEntradaExistente);
        }
        [WebMethod]
        public List<EstadoEntrada> ListarEstadoEntradas()
        {
            return estadoDAO.ListarTodos().ToList();
        }
    }
}
